const mongoose = require("./db"); // 引入数据库连接模块

const UserSchema = mongoose.Schema({
    name: {
        type: String
    },
    sn: {
        type: String,
        index: true
    },
    age: Number,
    status: {
        type: Number,
        default: 1 // 默认值为1
    }
});

//静态方法 建议别使用箭头函数 因为箭头函数 没有this
UserSchema.statics.findBySn = function(sn,cb) {
    //通过 find方法获取 sn的数据 this 关键字获取当前的model
    this.find({"sn":sn},function(err,docs){
        cb(err,docs)
    })
}

// 实例方法(基本不用)
UserSchema.methods.print = function(){
    console.log('我是一个实例方法')
    console.log(this.name)
}

module.exports = mongoose.model("User", UserSchema, "user"); // 导出模型，第三个参数为集合名称
// 注意：如果使用了mongoose的模块化方式，需要在每个文件中都连接数据库